Php-скрипт, без ajax работает:
<?php
$dir = '/home/public_html/files/';
echo 'Соединение';
if (isset ($_FILES['upfile']))
{
echo 'Файл передан';
if ($error_code == 0)
{
echo 'Файл загружен';
$upfile_name = $dir.$upfile_name;
move_uploaded_file($upfile, $upfile_name);
}
}
?>
Скрипт для загрузки файла с использованием ajax:
function log(html) {
document.getElementById('log').innerHTML +=html+'<br>';
}
document.forms.upload.onsubmit = function() {
var file = this.elements.myfile.files[0];
if (file) {
upload(file);
}
return false;
}
function upload(file) {
var xhr = new XMLHttpRequest();
xhr.onload = xhr.onerror = function() {
if (this.status == 200) {
log(xhr.responseText);
}
else {
log("error " + this.status);
}
}
var formData = new FormData();
formData.append("myfile", file);
xhr.open("POST", "test1.php", true);
xhr.send(formData);
}
В ответ получаю только "Соединение", то есть файл не передается. В логе ошибок тоже нет. Почему так?